About the Execution of ITS-Tools for SharedMemory-COL-000005
Execution Summary | |||||
Max Memory Used (MB) |
Time wait (ms) | CPU Usage (ms) | I/O Wait (ms) | Computed Result | Execution Status |
8038.050 | 3517331.00 | 3536598.00 | 9366.40 | FF??????TT?????? | normal |
Execution Chart
We display below the execution chart for this examination (boot time has been removed).
Trace from the execution
Waiting for the VM to be ready (probing ssh)
..............................................................
=====================================================================
Generated by BenchKit 2-2979
Executing tool itstools
Input is SharedMemory-COL-000005, examination is LTLFireability
Time confinement is 3600 seconds
Memory confinement is 16384 MBytes
Number of cores is 4
Run identifier is r109kn-smll-146373287400231
=====================================================================
--------------------
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 SharedMemory-COL-000005-LTLFireability-0
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-1
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-10
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-11
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-12
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-13
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-14
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-15
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-2
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-3
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-4
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-5
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-6
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-7
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-8
FORMULA_NAME SharedMemory-COL-000005-LTLFireability-9
=== Now, execution of the tool begins
BK_START 1463999301224
its-ltl command run as :
/home/mcc/BenchKit/eclipse/plugins/fr.lip6.move.gal.itstools.binaries_1.0.0.201605191313/bin/its-ltl-linux64 --gc-threshold 2000000 -i /home/mcc/execution/LTLFireability.gal -t CGAL -LTL /home/mcc/execution/LTLFireability.ltl -c -stutter-deadlock
Read 16 LTL properties
Checking formula 0 : !((F(X((((((((((((((((((((((((("PxP0.extMemAcc_0>=1")||("PxP1.extMemAcc_1>=1"))||("PxP2.extMemAcc_2>=1"))||("PxP3.extMemAcc_3>=1"))||("PxP4.extMemAcc_4>=1"))||("PxP5.extMemAcc_5>=1"))||("PxP6.extMemAcc_6>=1"))||("PxP7.extMemAcc_7>=1"))||("PxP8.extMemAcc_8>=1"))||("PxP9.extMemAcc_9>=1"))||("PxP10.extMemAcc_10>=1"))||("PxP11.extMemAcc_11>=1"))||("PxP12.extMemAcc_12>=1"))||("PxP13.extMemAcc_13>=1"))||("PxP14.extMemAcc_14>=1"))||("PxP15.extMemAcc_15>=1"))||("PxP16.extMemAcc_16>=1"))||("PxP17.extMemAcc_17>=1"))||("PxP18.extMemAcc_18>=1"))||("PxP19.extMemAcc_19>=1"))||("PxP20.extMemAcc_20>=1"))||("PxP21.extMemAcc_21>=1"))||("PxP22.extMemAcc_22>=1"))||("PxP23.extMemAcc_23>=1"))||("PxP24.extMemAcc_24>=1")))))
Formula 0 simplified : !FX("PxP0.extMemAcc_0>=1" | "PxP1.extMemAcc_1>=1" | "PxP2.extMemAcc_2>=1" | "PxP3.extMemAcc_3>=1" | "PxP4.extMemAcc_4>=1" | "PxP5.extMemAcc_5>=1" | "PxP6.extMemAcc_6>=1" | "PxP7.extMemAcc_7>=1" | "PxP8.extMemAcc_8>=1" | "PxP9.extMemAcc_9>=1" | "PxP10.extMemAcc_10>=1" | "PxP11.extMemAcc_11>=1" | "PxP12.extMemAcc_12>=1" | "PxP13.extMemAcc_13>=1" | "PxP14.extMemAcc_14>=1" | "PxP15.extMemAcc_15>=1" | "PxP16.extMemAcc_16>=1" | "PxP17.extMemAcc_17>=1" | "PxP18.extMemAcc_18>=1" | "PxP19.extMemAcc_19>=1" | "PxP20.extMemAcc_20>=1" | "PxP21.extMemAcc_21>=1" | "PxP22.extMemAcc_22>=1" | "PxP23.extMemAcc_23>=1" | "PxP24.extMemAcc_24>=1")
3 unique states visited
3 strongly connected components in search stack
3 transitions explored
3 items max in DFS search stack
6 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,2173.9,3293552,1,0,5403,178,779,1498,87,361,17339
an accepting run exists (use option '-e' to print it)
Formula 0 is FALSE accepting run found.
FORMULA SharedMemory-COL-000005-LTLFireability-0 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 1 : !((F(((((("P0.ownMemAcc_0>=1")&&("P0.memory_0>=1"))||(("P1.ownMemAcc_1>=1")&&("P1.memory_1>=1")))||(("P2.ownMemAcc_2>=1")&&("P2.memory_2>=1")))||(("P3.ownMemAcc_3>=1")&&("P3.memory_3>=1")))||(("P4.ownMemAcc_4>=1")&&("P4.memory_4>=1")))))
Formula 1 simplified : !F(("P0.memory_0>=1" & "P0.ownMemAcc_0>=1") | ("P1.memory_1>=1" & "P1.ownMemAcc_1>=1") | ("P2.memory_2>=1" & "P2.ownMemAcc_2>=1") | ("P3.memory_3>=1" & "P3.ownMemAcc_3>=1") | ("P4.memory_4>=1" & "P4.ownMemAcc_4>=1"))
2 unique states visited
2 strongly connected components in search stack
2 transitions explored
2 items max in DFS search stack
6 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,2173.97,3293552,1,0,20256,178,849,7262,91,491,42262
an accepting run exists (use option '-e' to print it)
Formula 1 is FALSE accepting run found.
FORMULA SharedMemory-COL-000005-LTLFireability-1 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 2 : !((X((((("P0.active_0>=1")||("P1.active_1>=1"))||("P2.active_2>=1"))||("P3.active_3>=1"))||("P4.active_4>=1"))))
Formula 2 simplified : !X("P0.active_0>=1" | "P1.active_1>=1" | "P2.active_2>=1" | "P3.active_3>=1" | "P4.active_4>=1")
2 unique states visited
0 strongly connected components in search stack
1 transitions explored
2 items max in DFS search stack
0 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,2173.98,3293552,1,0,20256,178,878,7262,92,491,42281
no accepting run found
Formula 2 is TRUE no accepting run found.
FORMULA SharedMemory-COL-000005-LTLFireability-2 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 3 : !(((((("P0.active_0>=1")||("P1.active_1>=1"))||("P2.active_2>=1"))||("P3.active_3>=1"))||("P4.active_4>=1")))
Formula 3 simplified : !("P0.active_0>=1" | "P1.active_1>=1" | "P2.active_2>=1" | "P3.active_3>=1" | "P4.active_4>=1")
1 unique states visited
0 strongly connected components in search stack
0 transitions explored
1 items max in DFS search stack
1 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,2173.98,3293552,1,0,20256,178,878,7262,92,491,42293
no accepting run found
Formula 3 is TRUE no accepting run found.
FORMULA SharedMemory-COL-000005-LTLFireability-3 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 4 : !((G(X(X(F((((((((((((((((((((((((("PxP0.extMemAcc_0>=1")||("PxP1.extMemAcc_1>=1"))||("PxP2.extMemAcc_2>=1"))||("PxP3.extMemAcc_3>=1"))||("PxP4.extMemAcc_4>=1"))||("PxP5.extMemAcc_5>=1"))||("PxP6.extMemAcc_6>=1"))||("PxP7.extMemAcc_7>=1"))||("PxP8.extMemAcc_8>=1"))||("PxP9.extMemAcc_9>=1"))||("PxP10.extMemAcc_10>=1"))||("PxP11.extMemAcc_11>=1"))||("PxP12.extMemAcc_12>=1"))||("PxP13.extMemAcc_13>=1"))||("PxP14.extMemAcc_14>=1"))||("PxP15.extMemAcc_15>=1"))||("PxP16.extMemAcc_16>=1"))||("PxP17.extMemAcc_17>=1"))||("PxP18.extMemAcc_18>=1"))||("PxP19.extMemAcc_19>=1"))||("PxP20.extMemAcc_20>=1"))||("PxP21.extMemAcc_21>=1"))||("PxP22.extMemAcc_22>=1"))||("PxP23.extMemAcc_23>=1"))||("PxP24.extMemAcc_24>=1")))))))
Formula 4 simplified : !GXXF("PxP0.extMemAcc_0>=1" | "PxP1.extMemAcc_1>=1" | "PxP2.extMemAcc_2>=1" | "PxP3.extMemAcc_3>=1" | "PxP4.extMemAcc_4>=1" | "PxP5.extMemAcc_5>=1" | "PxP6.extMemAcc_6>=1" | "PxP7.extMemAcc_7>=1" | "PxP8.extMemAcc_8>=1" | "PxP9.extMemAcc_9>=1" | "PxP10.extMemAcc_10>=1" | "PxP11.extMemAcc_11>=1" | "PxP12.extMemAcc_12>=1" | "PxP13.extMemAcc_13>=1" | "PxP14.extMemAcc_14>=1" | "PxP15.extMemAcc_15>=1" | "PxP16.extMemAcc_16>=1" | "PxP17.extMemAcc_17>=1" | "PxP18.extMemAcc_18>=1" | "PxP19.extMemAcc_19>=1" | "PxP20.extMemAcc_20>=1" | "PxP21.extMemAcc_21>=1" | "PxP22.extMemAcc_22>=1" | "PxP23.extMemAcc_23>=1" | "PxP24.extMemAcc_24>=1")
COULD_NOT_COMPUTE
BK_STOP 1464002818555
--------------------
content from stderr:
+ export BINDIR=/home/mcc/BenchKit/
+ BINDIR=/home/mcc/BenchKit/
++ pwd
+ export MODEL=/home/mcc/execution
+ MODEL=/home/mcc/execution
+ [[ LTLFireability = StateSpace ]]
+ /home/mcc/BenchKit//runeclipse.sh /home/mcc/execution LTLFireability -its
+ ulimit -s 65536
+ java -Dosgi.requiredJavaVersion=1.6 -XX:MaxPermSize=512m -Xss8m -Xms40m -Xmx8192m -Declipse.pde.launch=true -Dfile.encoding=UTF-8 -classpath /home/mcc/BenchKit//eclipse/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar org.eclipse.equinox.launcher.Main -application fr.lip6.move.gal.application.pnmcc -data /home/mcc/BenchKit//workspace -os linux -ws gtk -arch x86_64 -nl en_US -consoleLog -pnfolder /home/mcc/execution -examination LTLFireability -z3path /home/mcc/BenchKit//z3/bin/z3 -yices2path /home/mcc/BenchKit//yices/bin/yices -its
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0
May 23, 2016 10:28:25 AM fr.lip6.move.gal.application.Application transformPNML
INFO: Parsing pnml file : /home/mcc/execution/model.pnml
May 23, 2016 10:28:25 AM fr.lip6.move.gal.pnml.togal.PnmlToGalTransformer transform
INFO: Detected file is not PT type :http://www.pnml.org/version-2009/grammar/symmetricnet
May 23, 2016 10:28:26 AM fr.lip6.move.gal.pnml.togal.PnmlToGalTransformer transform
INFO: Load time of PNML (colored model parsed with PNMLFW) : 1495 ms
May 23, 2016 10:28:26 AM fr.lip6.move.gal.pnml.togal.HLGALTransformer handlePage
INFO: Transformed 6 places.
May 23, 2016 10:28:26 AM fr.lip6.move.gal.pnml.togal.HLGALTransformer handlePage
INFO: read order :VarOrder [vars=[ownMemAcc[0], ownMemAcc[1], ownMemAcc[2], ownMemAcc[3], ownMemAcc[4], queue[0], queue[1], queue[2], queue[3], queue[4], memory[0], memory[1], memory[2], memory[3], memory[4], active[0], active[1], active[2], active[3], active[4], extMemAcc[0], extMemAcc[1], extMemAcc[2], extMemAcc[3], extMemAcc[4], extMemAcc[5], extMemAcc[6], extMemAcc[7], extMemAcc[8], extMemAcc[9], extMemAcc[10], extMemAcc[11], extMemAcc[12], extMemAcc[13], extMemAcc[14], extMemAcc[15], extMemAcc[16], extMemAcc[17], extMemAcc[18], extMemAcc[19], extMemAcc[20], extMemAcc[21], extMemAcc[22], extMemAcc[23], extMemAcc[24], extBus[0]]]
May 23, 2016 10:28:26 AM fr.lip6.move.gal.pnml.togal.HLGALTransformer handlePage
INFO: sort/places :P->ownMemAcc,queue,memory,active,
Dot->extBus,
PxP->extMemAcc,
May 23, 2016 10:28:26 AM fr.lip6.move.gal.pnml.togal.HLGALTransformer handlePage
INFO: Transformed 5 transitions.
May 23, 2016 10:28:26 AM fr.lip6.move.gal.pnml.togal.PnmlToGalTransformer transform
INFO: Computed order based on color domains : CompositeGalOrder [children=[VarOrder [vars=[ownMemAcc[0], queue[0], memory[0], active[0]]], VarOrder [vars=[ownMemAcc[1], queue[1], memory[1], active[1]]], VarOrder [vars=[ownMemAcc[2], queue[2], memory[2], active[2]]], VarOrder [vars=[ownMemAcc[3], queue[3], memory[3], active[3]]], VarOrder [vars=[ownMemAcc[4], queue[4], memory[4], active[4]]], VarOrder [vars=[extBus[0]]], VarOrder [vars=[extMemAcc[0]]], VarOrder [vars=[extMemAcc[1]]], VarOrder [vars=[extMemAcc[2]]], VarOrder [vars=[extMemAcc[3]]], VarOrder [vars=[extMemAcc[4]]], VarOrder [vars=[extMemAcc[5]]], VarOrder [vars=[extMemAcc[6]]], VarOrder [vars=[extMemAcc[7]]], VarOrder [vars=[extMemAcc[8]]], VarOrder [vars=[extMemAcc[9]]], VarOrder [vars=[extMemAcc[10]]], VarOrder [vars=[extMemAcc[11]]], VarOrder [vars=[extMemAcc[12]]], VarOrder [vars=[extMemAcc[13]]], VarOrder [vars=[extMemAcc[14]]], VarOrder [vars=[extMemAcc[15]]], VarOrder [vars=[extMemAcc[16]]], VarOrder [vars=[extMemAcc[17]]], VarOrder [vars=[extMemAcc[18]]], VarOrder [vars=[extMemAcc[19]]], VarOrder [vars=[extMemAcc[20]]], VarOrder [vars=[extMemAcc[21]]], VarOrder [vars=[extMemAcc[22]]], VarOrder [vars=[extMemAcc[23]]], VarOrder [vars=[extMemAcc[24]]]]]
May 23, 2016 10:28:26 AM fr.lip6.move.gal.instantiate.Instantiator fuseEqualParameters
INFO: Fused parameters : $m and $x of transition endOwnAcc
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.Instantiator instantiateParameters
INFO: On-the-fly reduction of False transitions avoided exploring 5 instantiations of transitions. Total transitions/syncs built is 72
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.GALRewriter flatten
INFO: Flatten gal took : 71 ms
May 23, 2016 10:28:27 AM fr.lip6.move.gal.application.Application applyOrder
INFO: Applying decomposition
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.CompositeBuilder decomposeWithOrder
INFO: Decomposing Gal with order
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.GALRewriter flatten
INFO: Flatten gal took : 30 ms
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.CompositeBuilder decomposeWithOrder
INFO: Partition obtained :[ownMemAcc[0], queue[0], memory[0], active[0], ],[ownMemAcc[1], queue[1], memory[1], active[1], ],[ownMemAcc[2], queue[2], memory[2], active[2], ],[ownMemAcc[3], queue[3], memory[3], active[3], ],[ownMemAcc[4], queue[4], memory[4], active[4], ],[extBus[0], ],[extMemAcc[0], ],[extMemAcc[1], ],[extMemAcc[2], ],[extMemAcc[3], ],[extMemAcc[4], ],[extMemAcc[5], ],[extMemAcc[6], ],[extMemAcc[7], ],[extMemAcc[8], ],[extMemAcc[9], ],[extMemAcc[10], ],[extMemAcc[11], ],[extMemAcc[12], ],[extMemAcc[13], ],[extMemAcc[14], ],[extMemAcc[15], ],[extMemAcc[16], ],[extMemAcc[17], ],[extMemAcc[18], ],[extMemAcc[19], ],[extMemAcc[20], ],[extMemAcc[21], ],[extMemAcc[22], ],[extMemAcc[23], ],[extMemAcc[24], ],
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.CompositeBuilder rewriteArraysToAllowPartition
INFO: Rewriting array ownMemAcc to variables to allow decomposition.
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.CompositeBuilder rewriteArraysToAllowPartition
INFO: Rewriting array queue to variables to allow decomposition.
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.CompositeBuilder rewriteArraysToAllowPartition
INFO: Rewriting array memory to variables to allow decomposition.
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.CompositeBuilder rewriteArraysToAllowPartition
INFO: Rewriting array active to variables to allow decomposition.
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.CompositeBuilder rewriteArraysToAllowPartition
INFO: Rewriting array extMemAcc to variables to allow decomposition.
May 23, 2016 10:28:27 AM fr.lip6.move.gal.instantiate.Instantiator fuseIsomorphicEffects
INFO: Removed a total of 35 redundant transitions.
May 23, 2016 10:28:27 AM fr.lip6.move.serialization.SerializationUtil systemToFile
INFO: Time to serialize gal into /home/mcc/execution/LTLFireability.gal : 12 ms
May 23, 2016 10:28:27 AM fr.lip6.move.serialization.SerializationUtil serializePropertiesForITSLTLTools
INFO: Time to serialize properties into /home/mcc/execution/LTLFireability.ltl : 6 ms
May 23, 2016 11:26:55 AM fr.lip6.move.gal.itstools.ProcessController$1 run
WARNING: null
java.io.IOException: Pipe broken
at java.io.PipedInputStream.read(PipedInputStream.java:321)
at java.io.PipedInputStream.read(PipedInputStream.java:377)
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
at java.io.InputStreamReader.read(InputStreamReader.java:184)
at java.io.BufferedReader.fill(BufferedReader.java:161)
at java.io.BufferedReader.readLine(BufferedReader.java:324)
at java.io.BufferedReader.readLine(BufferedReader.java:389)
at fr.lip6.move.gal.application.Application$ITSInterpreter.run(Application.java:460)
at java.lang.Thread.run(Thread.java:745)
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="SharedMemory-COL-000005"
export BK_EXAMINATION="LTLFireability"
export BK_TOOL="itstools"
export BK_RESULT_DIR="/root/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
tar xzf /home/mcc/BenchKit/INPUTS/SharedMemory-COL-000005.tgz
mv SharedMemory-COL-000005 execution
# this is for BenchKit: explicit launching of the test
cd execution
echo "====================================================================="
echo " Generated by BenchKit 2-2979"
echo " Executing tool itstools"
echo " Input is SharedMemory-COL-000005, examination is LTLFireability"
echo " Time confinement is $BK_TIME_CONFINEMENT seconds"
echo " Memory confinement is 16384 MBytes"
echo " Number of cores is 4"
echo " Run identifier is r109kn-smll-146373287400231"
echo "====================================================================="
echo
echo "--------------------"
echo "content from stdout:"
echo
echo "=== Data for post analysis generated by BenchKit (invocation template)"
echo
if [ "LTLFireability" = "UpperBounds" ] ; then
echo "The expected result is a vector of positive values"
echo NUM_VECTOR
elif [ "LTLFireability" != "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 "LTLFireability.txt" ] ; then
echo "here is the order used to build the result vector(from text file)"
for x in $(grep Property LTLFireability.txt | cut -d ' ' -f 2 | sort -u) ; do
echo "FORMULA_NAME $x"
done
elif [ -f "LTLFireability.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
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 ;