About the Execution of ITS-LoLa for FlexibleBarrier-PT-20b
Execution Summary | |||||
Max Memory Used (MB) |
Time wait (ms) | CPU Usage (ms) | I/O Wait (ms) | Computed Result | Execution Status |
15742.200 | 3600000.00 | 71211.00 | 319.30 | FTTFFFTFFTFTFFFT | normal |
Execution Chart
We display below the execution chart for this examination (boot time has been removed).
Trace from the execution
Formatting '/data/fkordon/mcc2020-input.r170-smll-158987815800398.qcow2', fmt=qcow2 size=4294967296 backing_file='/data/fkordon/mcc2020-input.qcow2' encryption=off cluster_size=65536 lazy_refcounts=off
Waiting for the VM to be ready (probing ssh)
.......................
=====================================================================
Generated by BenchKit 2-4028
Executing tool itslola
Input is FlexibleBarrier-PT-20b, examination is ReachabilityCardinality
Time confinement is 3600 seconds
Memory confinement is 16384 MBytes
Number of cores is 4
Run identifier is r170-smll-158987815800398
=====================================================================
--------------------
preparation of the directory to be used:
/home/mcc/execution
total 1.7M
-rw-r--r-- 1 mcc users 3.9K Apr 4 19:47 CTLCardinality.txt
-rw-r--r-- 1 mcc users 21K Apr 4 19:47 CTLCardinality.xml
-rw-r--r-- 1 mcc users 2.5K Apr 4 08:41 CTLFireability.txt
-rw-r--r-- 1 mcc users 16K Apr 4 08:41 CTLFireability.xml
-rw-r--r-- 1 mcc users 4.0K Mar 24 05:37 GenericPropertiesDefinition.xml
-rw-r--r-- 1 mcc users 6.1K Mar 24 05:37 GenericPropertiesVerdict.xml
-rw-r--r-- 1 mcc users 3.5K Apr 8 14:54 LTLCardinality.txt
-rw-r--r-- 1 mcc users 24K Apr 28 14:01 LTLCardinality.xml
-rw-r--r-- 1 mcc users 2.2K Apr 8 14:54 LTLFireability.txt
-rw-r--r-- 1 mcc users 19K Apr 28 14:01 LTLFireability.xml
-rw-r--r-- 1 mcc users 3.6K Apr 3 21:25 ReachabilityCardinality.txt
-rw-r--r-- 1 mcc users 18K Apr 3 21:25 ReachabilityCardinality.xml
-rw-r--r-- 1 mcc users 2.8K Apr 3 13:43 ReachabilityFireability.txt
-rw-r--r-- 1 mcc users 17K Apr 3 13:43 ReachabilityFireability.xml
-rw-r--r-- 1 mcc users 1.7K Apr 4 01:37 UpperBounds.txt
-rw-r--r-- 1 mcc users 3.7K Apr 4 01:37 UpperBounds.xml
-rw-r--r-- 1 mcc users 6 Mar 24 05:37 equiv_col
-rw-r--r-- 1 mcc users 4 Mar 24 05:37 instance
-rw-r--r-- 1 mcc users 6 Mar 24 05:37 iscolored
-rw-r--r-- 1 mcc users 1.5M Mar 24 05:37 model.pnml
--------------------
content from stdout:
=== Data for post analysis generated by BenchKit (invocation template)
The expected result is a vector of booleans
BOOL_VECTOR
here is the order used to build the result vector(from text file)
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-00
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-01
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-02
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-03
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-04
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-05
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-06
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-07
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-08
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-09
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-10
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-11
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-12
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-13
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-14
FORMULA_NAME FlexibleBarrier-PT-20b-ReachabilityCardinality-15
=== Now, execution of the tool begins
BK_START 1591413440094
bash -c /home/mcc/BenchKit/BenchKit_head.sh 2> STDERR ; echo ; echo -n "BK_STOP " ; date -u +%s%3N
[2020-06-06 03:17:22] [INFO ] Running its-tools with arguments : [-pnfolder, /home/mcc/execution, -examination, ReachabilityCardinality, -z3path, /home/mcc/BenchKit//z3/bin/z3, -yices2path, /home/mcc/BenchKit//yices/bin/yices, -timeout, 3600, -rebuildPNML]
[2020-06-06 03:17:22] [INFO ] Parsing pnml file : /home/mcc/execution/model.pnml
[2020-06-06 03:17:23] [INFO ] Load time of PNML (sax parser for PT used): 563 ms
[2020-06-06 03:17:23] [INFO ] Transformed 5372 places.
[2020-06-06 03:17:23] [INFO ] Transformed 6193 transitions.
[2020-06-06 03:17:23] [INFO ] Found NUPN structural information;
[2020-06-06 03:17:23] [INFO ] Parsed PT model containing 5372 places and 6193 transitions in 699 ms.
Parsed 16 properties from file /home/mcc/execution/ReachabilityCardinality.xml in 132 ms.
Working with output stream class java.io.PrintStream
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-02 TRUE TECHNIQUES TOPOLOGICAL INITIAL_STATE
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-04 FALSE TECHNIQUES TOPOLOGICAL INITIAL_STATE
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-13 FALSE TECHNIQUES TOPOLOGICAL INITIAL_STATE
Incomplete random walk after 10000 steps, including 74 resets, run finished after 195 ms. (steps per millisecond=51 ) properties seen :[0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-06 TRUE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-05 FALSE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-01 TRUE TECHNIQUES TOPOLOGICAL RANDOM_WALK
Incomplete Best-First random walk after 10001 steps, including 6 resets, run finished after 19 ms. (steps per millisecond=526 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
Incomplete Best-First random walk after 10001 steps, including 5 resets, run finished after 20 ms. (steps per millisecond=500 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
Incomplete Best-First random walk after 10001 steps, including 6 resets, run finished after 37 ms. (steps per millisecond=270 ) properties seen :[0, 0, 1, 0, 0, 0, 0, 0, 0, 0]
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-07 FALSE TECHNIQUES TOPOLOGICAL BESTFIRST_WALK
Incomplete Best-First random walk after 10001 steps, including 5 resets, run finished after 23 ms. (steps per millisecond=434 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0]
Incomplete Best-First random walk after 10001 steps, including 5 resets, run finished after 17 ms. (steps per millisecond=588 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0]
Incomplete Best-First random walk after 10001 steps, including 6 resets, run finished after 14 ms. (steps per millisecond=714 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0]
Incomplete Best-First random walk after 10001 steps, including 5 resets, run finished after 23 ms. (steps per millisecond=434 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0]
Incomplete Best-First random walk after 10001 steps, including 5 resets, run finished after 11 ms. (steps per millisecond=909 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0]
Incomplete Best-First random walk after 10001 steps, including 5 resets, run finished after 13 ms. (steps per millisecond=769 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0]
Incomplete Best-First random walk after 10001 steps, including 5 resets, run finished after 12 ms. (steps per millisecond=833 ) properties seen :[0, 0, 0, 0, 0, 0, 0, 0, 0]
// Phase 1: matrix 6193 rows 5372 cols
[2020-06-06 03:17:24] [INFO ] Computed 22 place invariants in 436 ms
[2020-06-06 03:17:26] [INFO ] [Real]Absence check using 22 positive place invariants in 709 ms returned sat
[2020-06-06 03:17:26] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:17:29] [WARNING] SMT solver failed with error :java.lang.RuntimeException: SMT solver raised an error when submitting script. Raised (error "Failed to assert expression: java.io.IOException: Broken pipe (= s213 (- t6041 t5101))") while checking expression at index 0
[2020-06-06 03:17:31] [INFO ] [Real]Absence check using 22 positive place invariants in 703 ms returned sat
[2020-06-06 03:17:31] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:17:34] [INFO ] [Real]Absence check using state equation in 2863 ms returned (error "Solver has unexpectedly terminated")
[2020-06-06 03:17:36] [INFO ] [Real]Absence check using 22 positive place invariants in 632 ms returned sat
[2020-06-06 03:17:36] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:17:39] [INFO ] [Real]Absence check using state equation in 2807 ms returned (error "Solver has unexpectedly terminated")
[2020-06-06 03:17:41] [INFO ] [Real]Absence check using 22 positive place invariants in 579 ms returned sat
[2020-06-06 03:17:41] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:17:44] [INFO ] SMT solver returned unknown. Retrying;
[2020-06-06 03:17:44] [INFO ] [Real]Absence check using state equation in 3041 ms returned (error "Failed to check-sat")
[2020-06-06 03:17:46] [INFO ] [Real]Absence check using 22 positive place invariants in 683 ms returned sat
[2020-06-06 03:17:46] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:17:49] [INFO ] SMT solver returned unknown. Retrying;
[2020-06-06 03:17:49] [INFO ] [Real]Absence check using state equation in 2826 ms returned (error "Failed to check-sat")
[2020-06-06 03:17:51] [INFO ] [Real]Absence check using 22 positive place invariants in 672 ms returned sat
[2020-06-06 03:17:51] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:17:54] [INFO ] SMT solver returned unknown. Retrying;
[2020-06-06 03:17:54] [INFO ] [Real]Absence check using state equation in 2766 ms returned (error "Failed to check-sat")
[2020-06-06 03:17:56] [INFO ] [Real]Absence check using 22 positive place invariants in 652 ms returned sat
[2020-06-06 03:17:56] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:17:59] [INFO ] SMT solver returned unknown. Retrying;
[2020-06-06 03:17:59] [INFO ] [Real]Absence check using state equation in 2963 ms returned (error "Failed to check-sat")
[2020-06-06 03:18:01] [INFO ] [Real]Absence check using 22 positive place invariants in 688 ms returned sat
[2020-06-06 03:18:01] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:18:04] [INFO ] SMT solver returned unknown. Retrying;
[2020-06-06 03:18:04] [INFO ] [Real]Absence check using state equation in 2852 ms returned (error "Failed to check-sat")
[2020-06-06 03:18:06] [INFO ] [Real]Absence check using 22 positive place invariants in 666 ms returned sat
[2020-06-06 03:18:06] [INFO ] [Real]Adding state equation constraints to refine reachable states.
[2020-06-06 03:18:09] [INFO ] SMT solver returned unknown. Retrying;
[2020-06-06 03:18:09] [INFO ] [Real]Absence check using state equation in 2793 ms returned (error "Failed to check-sat")
Support contains 34 out of 5372 places. Attempting structural reductions.
Starting structural reductions, iteration 0 : 5372/5372 places, 6193/6193 transitions.
Graph (trivial) has 5270 edges and 5372 vertex of which 122 / 5372 are part of one of the 20 SCC in 42 ms
Free SCC test removed 102 places
Drop transitions removed 123 transitions
Reduce isomorphic transitions removed 123 transitions.
Performed 1302 Post agglomeration using F-continuation condition.Transition count delta: 1302
Iterating post reduction 0 with 1425 rules applied. Total rules applied 1426 place count 5270 transition count 4768
Reduce places removed 1302 places and 0 transitions.
Iterating post reduction 1 with 1302 rules applied. Total rules applied 2728 place count 3968 transition count 4768
Performed 366 Pre agglomeration using Quasi-Persistent + Divergent Free condition..
Pre-agglomeration after 2 with 366 Pre rules applied. Total rules applied 2728 place count 3968 transition count 4402
Deduced a syphon composed of 366 places in 12 ms
Reduce places removed 366 places and 0 transitions.
Iterating global reduction 2 with 732 rules applied. Total rules applied 3460 place count 3602 transition count 4402
Symmetric choice reduction at 2 with 2185 rule applications. Total rules 5645 place count 3602 transition count 4402
Deduced a syphon composed of 2185 places in 20 ms
Reduce places removed 2185 places and 2185 transitions.
Iterating global reduction 2 with 4370 rules applied. Total rules applied 10015 place count 1417 transition count 2217
Performed 12 Pre agglomeration using Quasi-Persistent + Divergent Free condition..
Pre-agglomeration after 2 with 12 Pre rules applied. Total rules applied 10015 place count 1417 transition count 2205
Deduced a syphon composed of 12 places in 9 ms
Reduce places removed 12 places and 0 transitions.
Iterating global reduction 2 with 24 rules applied. Total rules applied 10039 place count 1405 transition count 2205
Symmetric choice reduction at 2 with 346 rule applications. Total rules 10385 place count 1405 transition count 2205
Deduced a syphon composed of 346 places in 6 ms
Reduce places removed 346 places and 346 transitions.
Iterating global reduction 2 with 692 rules applied. Total rules applied 11077 place count 1059 transition count 1859
Ensure Unique test removed 334 transitions
Reduce isomorphic transitions removed 334 transitions.
Iterating post reduction 2 with 334 rules applied. Total rules applied 11411 place count 1059 transition count 1525
Performed 111 Post agglomeration using F-continuation condition.Transition count delta: 111
Deduced a syphon composed of 111 places in 1 ms
Reduce places removed 111 places and 0 transitions.
Iterating global reduction 3 with 222 rules applied. Total rules applied 11633 place count 948 transition count 1414
Drop transitions removed 39 transitions
Reduce isomorphic transitions removed 39 transitions.
Iterating post reduction 3 with 39 rules applied. Total rules applied 11672 place count 948 transition count 1375
Symmetric choice reduction at 4 with 20 rule applications. Total rules 11692 place count 948 transition count 1375
Deduced a syphon composed of 20 places in 0 ms
Reduce places removed 20 places and 20 transitions.
Iterating global reduction 4 with 40 rules applied. Total rules applied 11732 place count 928 transition count 1355
Free-agglomeration rule applied 784 times.
Iterating global reduction 4 with 784 rules applied. Total rules applied 12516 place count 928 transition count 571
Reduce places removed 784 places and 0 transitions.
Drop transitions removed 359 transitions
Reduce isomorphic transitions removed 359 transitions.
Iterating post reduction 4 with 1143 rules applied. Total rules applied 13659 place count 144 transition count 212
Reduce places removed 1 places and 1 transitions.
Iterating global reduction 5 with 1 rules applied. Total rules applied 13660 place count 143 transition count 211
Reduce places removed 1 places and 0 transitions.
Graph (trivial) has 99 edges and 142 vertex of which 38 / 142 are part of one of the 19 SCC in 0 ms
Free SCC test removed 19 places
Iterating post reduction 5 with 2 rules applied. Total rules applied 13662 place count 123 transition count 211
Drop transitions removed 38 transitions
Reduce isomorphic transitions removed 38 transitions.
Iterating post reduction 6 with 38 rules applied. Total rules applied 13700 place count 123 transition count 173
Performed 20 Pre agglomeration using Quasi-Persistent + Divergent Free condition..
Pre-agglomeration after 7 with 20 Pre rules applied. Total rules applied 13700 place count 123 transition count 153
Deduced a syphon composed of 20 places in 0 ms
Reduce places removed 20 places and 0 transitions.
Iterating global reduction 7 with 40 rules applied. Total rules applied 13740 place count 103 transition count 153
Drop transitions removed 19 transitions
Reduce isomorphic transitions removed 19 transitions.
Iterating post reduction 7 with 19 rules applied. Total rules applied 13759 place count 103 transition count 134
Performed 20 Post agglomeration using F-continuation condition.Transition count delta: 20
Deduced a syphon composed of 20 places in 0 ms
Reduce places removed 20 places and 0 transitions.
Iterating global reduction 8 with 40 rules applied. Total rules applied 13799 place count 83 transition count 114
Free-agglomeration rule applied 19 times.
Iterating global reduction 8 with 19 rules applied. Total rules applied 13818 place count 83 transition count 95
Reduce places removed 20 places and 0 transitions.
Drop transitions removed 18 transitions
Reduce isomorphic transitions removed 18 transitions.
Iterating post reduction 8 with 38 rules applied. Total rules applied 13856 place count 63 transition count 77
Partial Free-agglomeration rule applied 2 times.
Drop transitions removed 2 transitions
Iterating global reduction 9 with 2 rules applied. Total rules applied 13858 place count 63 transition count 77
Applied a total of 13858 rules in 1920 ms. Remains 63 /5372 variables (removed 5309) and now considering 77/6193 (removed 6116) transitions.
Finished structural reductions, in 1 iterations. Remains : 63/5372 places, 77/6193 transitions.
Finished random walk after 710 steps, including 0 resets, run visited all 9 properties in 6 ms. (steps per millisecond=118 )
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-15 TRUE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-14 FALSE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-12 FALSE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-11 TRUE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-10 FALSE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-09 TRUE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-08 FALSE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-03 FALSE TECHNIQUES TOPOLOGICAL RANDOM_WALK
FORMULA FlexibleBarrier-PT-20b-ReachabilityCardinality-00 FALSE TECHNIQUES TOPOLOGICAL RANDOM_WALK
All properties solved without resorting to model-checking.
--------------------
content from stderr:
Sequence of Actions to be Executed by the VM
This is useful if one wants to reexecute the tool in the VM from the submitted image disk.
set -x
# this is for BenchKit: configuration of major elements for the test
export BK_INPUT="FlexibleBarrier-PT-20b"
export BK_EXAMINATION="ReachabilityCardinality"
export BK_TOOL="itslola"
export BK_RESULT_DIR="/tmp/BK_RESULTS/OUTPUTS"
export BK_TIME_CONFINEMENT="3600"
export BK_MEMORY_CONFINEMENT="16384"
# this is specific to your benchmark or test
export BIN_DIR="$HOME/BenchKit/bin"
# remove the execution directoty if it exists (to avoid increse of .vmdk images)
if [ -d execution ] ; then
rm -rf execution
fi
# this is for BenchKit: explicit launching of the test
echo "====================================================================="
echo " Generated by BenchKit 2-4028"
echo " Executing tool itslola"
echo " Input is FlexibleBarrier-PT-20b, examination is ReachabilityCardinality"
echo " Time confinement is $BK_TIME_CONFINEMENT seconds"
echo " Memory confinement is 16384 MBytes"
echo " Number of cores is 4"
echo " Run identifier is r170-smll-158987815800398"
echo "====================================================================="
echo
echo "--------------------"
echo "preparation of the directory to be used:"
tar xzf /home/mcc/BenchKit/INPUTS/FlexibleBarrier-PT-20b.tgz
mv FlexibleBarrier-PT-20b execution
cd execution
if [ "ReachabilityCardinality" = "ReachabilityDeadlock" ] || [ "ReachabilityCardinality" = "UpperBounds" ] || [ "ReachabilityCardinality" = "QuasiLiveness" ] || [ "ReachabilityCardinality" = "StableMarking" ] || [ "ReachabilityCardinality" = "Liveness" ] || [ "ReachabilityCardinality" = "OneSafe" ] || [ "ReachabilityCardinality" = "StateSpace" ]; then
rm -f GenericPropertiesVerdict.xml
fi
pwd
ls -lh
echo
echo "--------------------"
echo "content from stdout:"
echo
echo "=== Data for post analysis generated by BenchKit (invocation template)"
echo
if [ "ReachabilityCardinality" = "UpperBounds" ] ; then
echo "The expected result is a vector of positive values"
echo NUM_VECTOR
elif [ "ReachabilityCardinality" != "StateSpace" ] ; then
echo "The expected result is a vector of booleans"
echo BOOL_VECTOR
else
echo "no data necessary for post analysis"
fi
echo
if [ -f "ReachabilityCardinality.txt" ] ; then
echo "here is the order used to build the result vector(from text file)"
for x in $(grep Property ReachabilityCardinality.txt | cut -d ' ' -f 2 | sort -u) ; do
echo "FORMULA_NAME $x"
done
elif [ -f "ReachabilityCardinality.xml" ] ; then # for cunf (txt files deleted;-)
echo echo "here is the order used to build the result vector(from xml file)"
for x in $(grep '
echo "FORMULA_NAME $x"
done
elif [ "ReachabilityCardinality" = "ReachabilityDeadlock" ] || [ "ReachabilityCardinality" = "QuasiLiveness" ] || [ "ReachabilityCardinality" = "StableMarking" ] || [ "ReachabilityCardinality" = "Liveness" ] || [ "ReachabilityCardinality" = "OneSafe" ] ; then
echo "FORMULA_NAME ReachabilityCardinality"
fi
echo
echo "=== Now, execution of the tool begins"
echo
echo -n "BK_START "
date -u +%s%3N
echo
timeout -s 9 $BK_TIME_CONFINEMENT bash -c "/home/mcc/BenchKit/BenchKit_head.sh 2> STDERR ; echo ; echo -n \"BK_STOP \" ; date -u +%s%3N"
if [ $? -eq 137 ] ; then
echo
echo "BK_TIME_CONFINEMENT_REACHED"
fi
echo
echo "--------------------"
echo "content from stderr:"
echo
cat STDERR ;