About the Execution of ITS-Tools for ShieldIIPs-PT-100B
Execution Summary | |||||
Max Memory Used (MB) |
Time wait (ms) | CPU Usage (ms) | I/O Wait (ms) | Computed Result | Execution Status |
2031.947 | 50375.00 | 114804.00 | 42.90 | T | normal |
Execution Chart
We display below the execution chart for this examination (boot time has been removed).
Trace from the execution
Formatting '/data/fkordon/mcc2023-input.r403-oct2-167903724100107.qcow2', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=4294967296 backing_file=/data/fkordon/mcc2023-input.qcow2 backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
Waiting for the VM to be ready (probing ssh)
.......................
=====================================================================
Generated by BenchKit 2-5348
Executing tool itstools
Input is ShieldIIPs-PT-100B, examination is QuasiLiveness
Time confinement is 1800 seconds
Memory confinement is 16384 MBytes
Number of cores is 4
Run identifier is r403-oct2-167903724100107
=====================================================================
--------------------
preparation of the directory to be used:
/home/mcc/execution
total 2.2M
-rw-r--r-- 1 mcc users 8.9K Feb 25 16:41 CTLCardinality.txt
-rw-r--r-- 1 mcc users 99K Feb 25 16:41 CTLCardinality.xml
-rw-r--r-- 1 mcc users 5.1K Feb 25 16:40 CTLFireability.txt
-rw-r--r-- 1 mcc users 43K Feb 25 16:40 CTLFireability.xml
-rw-r--r-- 1 mcc users 4.2K Jan 29 11:41 GenericPropertiesDefinition.xml
-rw-r--r-- 1 mcc users 3.9K Feb 25 16:55 LTLCardinality.txt
-rw-r--r-- 1 mcc users 27K Feb 25 16:55 LTLCardinality.xml
-rw-r--r-- 1 mcc users 2.4K Feb 25 16:55 LTLFireability.txt
-rw-r--r-- 1 mcc users 18K Feb 25 16:55 LTLFireability.xml
-rw-r--r-- 1 mcc users 14K Feb 25 16:41 ReachabilityCardinality.txt
-rw-r--r-- 1 mcc users 143K Feb 25 16:41 ReachabilityCardinality.xml
-rw-r--r-- 1 mcc users 7.6K Feb 25 16:41 ReachabilityFireability.txt
-rw-r--r-- 1 mcc users 62K Feb 25 16:41 ReachabilityFireability.xml
-rw-r--r-- 1 mcc users 1.7K Feb 25 16:55 UpperBounds.txt
-rw-r--r-- 1 mcc users 3.7K Feb 25 16:55 UpperBounds.xml
-rw-r--r-- 1 mcc users 6 Mar 5 18:23 equiv_col
-rw-r--r-- 1 mcc users 5 Mar 5 18:23 instance
-rw-r--r-- 1 mcc users 6 Mar 5 18:23 iscolored
-rw-r--r-- 1 mcc users 1.7M Mar 5 18:23 model.pnml
--------------------
content from stdout:
=== Data for post analysis generated by BenchKit (invocation template)
The expected result is a vector of booleans
BOOL_VECTOR
FORMULA_NAME QuasiLiveness
=== Now, execution of the tool begins
BK_START 1679731801008
bash -c /home/mcc/BenchKit/BenchKit_head.sh 2> STDERR ; echo ; echo -n "BK_STOP " ; date -u +%s%3N
Invoking MCC driver with
BK_TOOL=itstools
BK_EXAMINATION=QuasiLiveness
BK_BIN_PATH=/home/mcc/BenchKit/bin/
BK_TIME_CONFINEMENT=1800
BK_INPUT=ShieldIIPs-PT-100B
Not applying reductions.
Model is PT
QuasiLiveness PT
Running Version 202303021504
[2023-03-25 08:10:03] [INFO ] Running its-tools with arguments : [-pnfolder, /home/mcc/execution, -examination, QuasiLiveness, -its, -ltsmin, -greatspnpath, /home/mcc/BenchKit/bin//../itstools/bin//..//greatspn/, -order, META, -manyOrder, -smt, -timeout, 1800]
[2023-03-25 08:10:03] [INFO ] Parsing pnml file : /home/mcc/execution/model.pnml
[2023-03-25 08:10:04] [INFO ] Load time of PNML (sax parser for PT used): 315 ms
[2023-03-25 08:10:04] [INFO ] Transformed 6003 places.
[2023-03-25 08:10:04] [INFO ] Transformed 5903 transitions.
[2023-03-25 08:10:04] [INFO ] Found NUPN structural information;
[2023-03-25 08:10:04] [INFO ] Parsed PT model containing 6003 places and 5903 transitions and 17806 arcs in 803 ms.
Starting structural reductions in LIVENESS mode, iteration 0 : 6003/6003 places, 5903/5903 transitions.
Drop transitions removed 501 transitions
Trivial Post-agglo rules discarded 501 transitions
Performed 501 trivial Post agglomeration. Transition count delta: 501
Iterating post reduction 0 with 501 rules applied. Total rules applied 501 place count 6003 transition count 5402
Reduce places removed 501 places and 0 transitions.
Iterating post reduction 1 with 501 rules applied. Total rules applied 1002 place count 5502 transition count 5402
Performed 501 Pre agglomeration using Quasi-Persistent + Divergent Free condition..
Pre-agglomeration after 2 with 501 Pre rules applied. Total rules applied 1002 place count 5502 transition count 4901
Deduced a syphon composed of 501 places in 81 ms
Reduce places removed 501 places and 0 transitions.
Iterating global reduction 2 with 1002 rules applied. Total rules applied 2004 place count 5001 transition count 4901
Performed 2400 Post agglomeration using F-continuation condition.Transition count delta: 2400
Deduced a syphon composed of 2400 places in 20 ms
Reduce places removed 2400 places and 0 transitions.
Iterating global reduction 2 with 4800 rules applied. Total rules applied 6804 place count 2601 transition count 2501
Renaming transitions due to excessive name length > 1024 char.
Applied a total of 6804 rules in 1021 ms. Remains 2601 /6003 variables (removed 3402) and now considering 2501/5903 (removed 3402) transitions.
// Phase 1: matrix 2501 rows 2601 cols
[2023-03-25 08:10:05] [INFO ] Computed 901 place invariants in 49 ms
[2023-03-25 08:10:08] [INFO ] Implicit Places using invariants in 2663 ms returned []
[2023-03-25 08:10:08] [INFO ] Invariant cache hit.
[2023-03-25 08:10:09] [INFO ] State equation strengthened by 4 read => feed constraints.
[2023-03-25 08:10:13] [INFO ] Implicit Places using invariants and state equation in 5108 ms returned []
Implicit Place search using SMT with State Equation took 7821 ms to find 0 implicit places.
[2023-03-25 08:10:13] [INFO ] Invariant cache hit.
[2023-03-25 08:10:17] [INFO ] Dead Transitions using invariants and state equation in 4331 ms found 0 transitions.
Starting structural reductions in LIVENESS mode, iteration 1 : 2601/6003 places, 2501/5903 transitions.
Finished structural reductions in LIVENESS mode , in 1 iterations and 13189 ms. Remains : 2601/6003 places, 2501/5903 transitions.
Discarding 600 transitions out of 2501. Remains 1901
Initial state reduction rules removed 1 formulas.
[2023-03-25 08:10:18] [INFO ] Flatten gal took : 524 ms
[2023-03-25 08:10:18] [INFO ] Flatten gal took : 230 ms
[2023-03-25 08:10:18] [INFO ] Time to serialize gal into /tmp/ReachabilityCardinality16520586094710514746.gal : 71 ms
[2023-03-25 08:10:19] [INFO ] Time to serialize properties into /tmp/ReachabilityCardinality10149866824821955122.prop : 29 ms
Invoking ITS tools like this :cd /home/mcc/execution;'/home/mcc/BenchKit/itstools/itstools/plugins/fr.lip6.move.gal.itstools.binaries_1.0.0.202303021504/bin/its-reach-linux64' '--gc-threshold' '2000000' '--quiet' '-i' '/tmp/ReachabilityCardinality16520586094710514746.gal' '-t' 'CGAL' '-reachable-file' '/tmp/ReachabilityCardinality10149866824821955122.prop' '--nowitness' '--gen-order' 'FOLLOW'
its-reach command run as :
/home/mcc/BenchKit/itstools/itstools/plugins/fr.lip6.move.gal.itstools.binaries_1.0.0.202303021504/bin/its-reach-linux64 --gc-threshold 2000000 --quiet ...330
Loading property file /tmp/ReachabilityCardinality10149866824821955122.prop.
Incomplete random walk after 10000 steps, including 2 resets, run finished after 2064 ms. (steps per millisecond=4 ) properties (out of 1900) seen :1185
Running SMT prover for 715 properties.
[2023-03-25 08:10:20] [INFO ] Invariant cache hit.
Reachability property qltransition_2492 is true.
Reachability property qltransition_2487 is true.
Reachability property qltransition_2471 is true.
SDD proceeding with computation,1897 properties remain. new max is 2
SDD size :3 after 5
Reachability property qltransition_2475 is true.
Reachability property qltransition_2455 is true.
SDD proceeding with computation,1895 properties remain. new max is 2
SDD size :5 after 8
Reachability property qltransition_2459 is true.
Reachability property qltransition_2439 is true.
SDD proceeding with computation,1893 properties remain. new max is 2
SDD size :8 after 11
Reachability property qltransition_2443 is true.
Reachability property qltransition_2423 is true.
SDD proceeding with computation,1891 properties remain. new max is 2
SDD size :11 after 14
Reachability property qltransition_2427 is true.
Reachability property qltransition_2407 is true.
SDD proceeding with computation,1889 properties remain. new max is 2
SDD size :14 after 17
Reachability property qltransition_2411 is true.
Reachability property qltransition_2391 is true.
SDD proceeding with computation,1887 properties remain. new max is 2
SDD size :17 after 20
Reachability property qltransition_2395 is true.
Reachability property qltransition_2375 is true.
SDD proceeding with computation,1885 properties remain. new max is 2
SDD size :20 after 23
Reachability property qltransition_2379 is true.
Reachability property qltransition_2359 is true.
SDD proceeding with computation,1883 properties remain. new max is 2
SDD size :23 after 26
Reachability property qltransition_2363 is true.
Reachability property qltransition_2343 is true.
SDD proceeding with computation,1881 properties remain. new max is 2
SDD size :26 after 29
Reachability property qltransition_2347 is true.
Reachability property qltransition_2327 is true.
SDD proceeding with computation,1879 properties remain. new max is 2
SDD size :29 after 32
Reachability property qltransition_2331 is true.
Reachability property qltransition_2311 is true.
SDD proceeding with computation,1877 properties remain. new max is 2
SDD size :32 after 35
Reachability property qltransition_2315 is true.
Reachability property qltransition_2295 is true.
SDD proceeding with computation,1875 properties remain. new max is 2
SDD size :35 after 38
Reachability property qltransition_2299 is true.
Reachability property qltransition_2279 is true.
SDD proceeding with computation,1873 properties remain. new max is 2
SDD size :38 after 41
Reachability property qltransition_2283 is true.
Reachability property qltransition_2263 is true.
SDD proceeding with computation,1871 properties remain. new max is 2
SDD size :41 after 44
Reachability property qltransition_2267 is true.
Reachability property qltransition_2247 is true.
SDD proceeding with computation,1869 properties remain. new max is 2
SDD size :44 after 47
Reachability property qltransition_2251 is true.
Reachability property qltransition_2231 is true.
SDD proceeding with computation,1867 properties remain. new max is 2
SDD size :47 after 50
Reachability property qltransition_2235 is true.
Reachability property qltransition_2215 is true.
SDD proceeding with computation,1865 properties remain. new max is 2
SDD size :50 after 53
Reachability property qltransition_2219 is true.
Reachability property qltransition_2199 is true.
SDD proceeding with computation,1863 properties remain. new max is 2
SDD size :53 after 56
Reachability property qltransition_2203 is true.
Reachability property qltransition_2183 is true.
SDD proceeding with computation,1861 properties remain. new max is 2
SDD size :56 after 59
Reachability property qltransition_2187 is true.
Reachability property qltransition_2167 is true.
SDD proceeding with computation,1859 properties remain. new max is 2
SDD size :59 after 62
Reachability property qltransition_2171 is true.
Reachability property qltransition_2151 is true.
SDD proceeding with computation,1857 properties remain. new max is 2
SDD size :62 after 65
Reachability property qltransition_2155 is true.
Reachability property qltransition_2135 is true.
SDD proceeding with computation,1855 properties remain. new max is 2
SDD size :65 after 68
Reachability property qltransition_2139 is true.
Reachability property qltransition_2119 is true.
SDD proceeding with computation,1853 properties remain. new max is 2
SDD size :68 after 71
Reachability property qltransition_2123 is true.
Reachability property qltransition_2103 is true.
SDD proceeding with computation,1851 properties remain. new max is 2
SDD size :71 after 74
Reachability property qltransition_2107 is true.
Reachability property qltransition_2087 is true.
java.lang.RuntimeException: SMT solver raised an error when submitting script. Raised (error "Failed to assert expression: java.io.IOException: Stream close...
at fr.lip6.move.gal.structural.smt.SMTUtils.execAndCheckResult(SMTUtils.java:251)
at fr.lip6.move.gal.structural.smt.DeadlockTester.assertInvariants(DeadlockTester.java:2340)
at fr.lip6.move.gal.structural.smt.DeadlockTester.verifyPossible(DeadlockTester.java:618)
at fr.lip6.move.gal.structural.smt.DeadlockTester.testUnreachableWithSMTIncremental(DeadlockTester.java:339)
at fr.lip6.move.gal.structural.smt.DeadlockTester.testUnreachableWithSMT(DeadlockTester.java:223)
at fr.lip6.move.gal.application.solver.ReachabilitySolver.applyReductions(ReachabilitySolver.java:95)
at fr.lip6.move.gal.application.solver.global.GlobalPropertySolver.applyReachabilitySolver(GlobalPropertySolver.java:724)
at fr.lip6.move.gal.application.solver.global.GlobalPropertySolver.solveProperty(GlobalPropertySolver.java:558)
at fr.lip6.move.gal.application.solver.global.GlobalPropertySolver.preSolveLiveness(GlobalPropertySolver.java:412)
at fr.lip6.move.gal.application.solver.global.GlobalPropertySolver.preStableMarking(GlobalPropertySolver.java:321)
at fr.lip6.move.gal.application.solver.global.GlobalPropertySolver.solveProperty(GlobalPropertySolver.java:294)
at fr.lip6.move.gal.application.Application.startNoEx(Application.java:386)
at fr.lip6.move.gal.application.Application.start(Application.java:178)
at fr.lip6.move.gal.itscl.application.Application.start(Application.java:45)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
at org.eclipse.equinox.launcher.Main.main(Main.java:1440)
[2023-03-25 08:10:45] [WARNING] SMT solver failed with error :SMT solver raised an error when submitting script.... while checking expressions.
[2023-03-25 08:10:45] [INFO ] After 25040ms SMT Verify possible using all constraints in real domain returned unsat :0 sat :0
Fused 715 Parikh solutions to 1 different solutions.
Parikh walk visited 0 properties in 0 ms.
Support contains 1121 out of 2601 places. Attempting structural reductions.
Starting structural reductions in REACHABILITY mode, iteration 0 : 2601/2601 places, 2501/2501 transitions.
Discarding 68 places :
Symmetric choice reduction at 0 with 68 rule applications. Total rules 68 place count 2533 transition count 2433
Iterating global reduction 0 with 68 rules applied. Total rules applied 136 place count 2533 transition count 2433
Partial Free-agglomeration rule applied 299 times.
Drop transitions removed 299 transitions
Iterating global reduction 0 with 299 rules applied. Total rules applied 435 place count 2533 transition count 2433
Applied a total of 435 rules in 367 ms. Remains 2533 /2601 variables (removed 68) and now considering 2433/2501 (removed 68) transitions.
Finished structural reductions in REACHABILITY mode , in 1 iterations and 368 ms. Remains : 2533/2601 places, 2433/2501 transitions.
SDD proceeding with computation,1849 properties remain. new max is 2
SDD size :74 after 77
Reachability property qltransition_2091 is true.
Reachability property qltransition_2071 is true.
SDD proceeding with computation,1847 properties remain. new max is 2
SDD size :77 after 80
Reachability property qltransition_2075 is true.
Reachability property qltransition_2055 is true.
SDD proceeding with computation,1845 properties remain. new max is 2
SDD size :80 after 83
Reachability property qltransition_2059 is true.
Reachability property qltransition_2039 is true.
SDD proceeding with computation,1843 properties remain. new max is 2
SDD size :83 after 86
Reachability property qltransition_2043 is true.
Reachability property qltransition_2023 is true.
Finished random walk after 121801 steps, including 23 resets, run visited all 715 properties in 4753 ms. (steps per millisecond=25 )
ITS runner failed with exception null
java.lang.InterruptedException
at java.base/java.lang.Object.wait(Native Method)
at java.base/java.lang.Thread.join(Thread.java:1304)
at java.base/java.lang.Thread.join(Thread.java:1372)
at fr.lip6.move.gal.application.runner.AbstractRunner.join(AbstractRunner.java:27)
at fr.lip6.move.gal.application.runner.its.ITSRunner.join(ITSRunner.java:177)
at fr.lip6.move.gal.application.solver.global.GlobalPropertySolver.verifyWithSDD(GlobalPropertySolver.java:675)
at fr.lip6.move.gal.application.solver.ReachabilitySolver.lambda$2(ReachabilitySolver.java:63)
at java.base/java.lang.Thread.run(Thread.java:833)
Able to resolve query QuasiLiveness after proving 1901 properties.
FORMULA QuasiLiveness TRUE TECHNIQUES RANDOM_WALK TOPOLOGICAL INITIAL_STATE
Total runtime 47244 ms.
BK_STOP 1679731851383
--------------------
content from stderr:
+ export BINDIR=/home/mcc/BenchKit/bin//../itstools/bin//../
+ BINDIR=/home/mcc/BenchKit/bin//../itstools/bin//../
++ pwd
+ export MODEL=/home/mcc/execution
+ MODEL=/home/mcc/execution
+ [[ QuasiLiveness = StateSpace ]]
+ /home/mcc/BenchKit/bin//../itstools/bin//..//runeclipse.sh /home/mcc/execution QuasiLiveness -its -ltsmin -greatspnpath /home/mcc/BenchKit/bin//../itstools/bin//..//greatspn/ -order META -manyOrder -smt -timeout 1800
+ ulimit -s 65536
+ [[ -z '' ]]
+ export LTSMIN_MEM_SIZE=8589934592
+ LTSMIN_MEM_SIZE=8589934592
+ export PYTHONPATH=/home/mcc/BenchKit/itstools/pylibs
+ PYTHONPATH=/home/mcc/BenchKit/itstools/pylibs
+ export LD_LIBRARY_PATH=/home/mcc/BenchKit/itstools/pylibs:
+ LD_LIBRARY_PATH=/home/mcc/BenchKit/itstools/pylibs:
++ sed s/.jar//
++ perl -pe 's/.*\.//g'
++ ls /home/mcc/BenchKit/bin//../itstools/bin//..//itstools/plugins/fr.lip6.move.gal.application.pnmcc_1.0.0.202303021504.jar
+ VERSION=202303021504
+ echo 'Running Version 202303021504'
+ /home/mcc/BenchKit/bin//../itstools/bin//..//itstools/its-tools -pnfolder /home/mcc/execution -examination QuasiLiveness -its -ltsmin -greatspnpath /home/mcc/BenchKit/bin//../itstools/bin//..//greatspn/ -order META -manyOrder -smt -timeout 1800
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="ShieldIIPs-PT-100B"
export BK_EXAMINATION="QuasiLiveness"
export BK_TOOL="itstools"
export BK_RESULT_DIR="/tmp/BK_RESULTS/OUTPUTS"
export BK_TIME_CONFINEMENT="1800"
export BK_MEMORY_CONFINEMENT="16384"
export BK_BIN_PATH="/home/mcc/BenchKit/bin/"
# 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-5348"
echo " Executing tool itstools"
echo " Input is ShieldIIPs-PT-100B, examination is QuasiLiveness"
echo " Time confinement is $BK_TIME_CONFINEMENT seconds"
echo " Memory confinement is 16384 MBytes"
echo " Number of cores is 4"
echo " Run identifier is r403-oct2-167903724100107"
echo "====================================================================="
echo
echo "--------------------"
echo "preparation of the directory to be used:"
tar xzf /home/mcc/BenchKit/INPUTS/ShieldIIPs-PT-100B.tgz
mv ShieldIIPs-PT-100B execution
cd execution
if [ "QuasiLiveness" = "ReachabilityDeadlock" ] || [ "QuasiLiveness" = "UpperBounds" ] || [ "QuasiLiveness" = "QuasiLiveness" ] || [ "QuasiLiveness" = "StableMarking" ] || [ "QuasiLiveness" = "Liveness" ] || [ "QuasiLiveness" = "OneSafe" ] || [ "QuasiLiveness" = "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 [ "QuasiLiveness" = "UpperBounds" ] ; then
echo "The expected result is a vector of positive values"
echo NUM_VECTOR
elif [ "QuasiLiveness" != "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 "QuasiLiveness.txt" ] ; then
echo "here is the order used to build the result vector(from text file)"
for x in $(grep Property QuasiLiveness.txt | cut -d ' ' -f 2 | sort -u) ; do
echo "FORMULA_NAME $x"
done
elif [ -f "QuasiLiveness.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 [ "QuasiLiveness" = "ReachabilityDeadlock" ] || [ "QuasiLiveness" = "QuasiLiveness" ] || [ "QuasiLiveness" = "StableMarking" ] || [ "QuasiLiveness" = "Liveness" ] || [ "QuasiLiveness" = "OneSafe" ] ; then
echo "FORMULA_NAME QuasiLiveness"
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 ;